table of contents
PAPI_read_counters(3) | PAPI | PAPI_read_counters(3) |
NAME¶
PAPI_read_counters - PAPI High Level: read and reset counters
PAPI_accum_counters - PAPI High Level: accumulate and reset counters
SYNOPSIS¶
C Interface
#include <papi.h> int PAPI_read_counters(long_long *values, int array_len); int PAPI_accum_counters(long_long *values, int array_len);
Fortran Interface
#include fpapi.h PAPIF_read_counters(C_LONG_LONG(*) values, C_INT array_len, C_INT check) PAPIF_accum_counters(C_LONG_LONG(*) values, C_INT array_len, C_INT check)
DESCRIPTION¶
PAPI_read_counters() copies the event counters into the
array values
The counters are reset and left running after the call.
PAPI_accum_counters() adds the event counters into the
array values
The counters are reset and left running after the call.
These calls assume an initialized PAPI library and a properly added event set.
ARGUMENTS¶
*values -- an array to hold the counter values of the counting events
array_len -- the number of items in the *events array
RETURN VALUES¶
On success, these functions return PAPI_OK.
On error, a non-zero error code is returned.
ERRORS¶
- PAPI_EINVAL
- One or more of the arguments is invalid.
- PAPI_ESYS
- A system or C library call failed inside PAPI, see the errno variable.
EXAMPLES¶
do_100events();
if (PAPI_read_counters(values, num_hwcntrs) != PAPI_OK)
handle_error(1);
/* values[0] now equals 100 */
do_100events();
if (PAPI_accum_counters(values, num_hwcntrs) != PAPI_OK)
handle_error(1);
/* values[0] now equals 200 */
values[0] = -100;
do_100events();
if (PAPI_accum_counters(values, num_hwcntrs) != PAPI_OK)
handle_error(1);
/* values[0] now equals 0 */
BUGS¶
These functions have no known bugs.
SEE ALSO¶
September, 2004 | PAPI Programmer's Reference |